package cn.jetpiece.cloud.rabbit.starter.constant;

/**
 * <p>系统常量类</p>
 *
 * @author <a href="mailto:blnp.yibin@qq.com">lyb</a>
 * @version 1.0
 * @since 2025/4/27 11:09
 */
public interface Constants {

    public interface MQ {

        /**
         * 默认延时时间为-1
         */
        int DEFAULT_DELAY = -1;

        /**
         * 低延迟时间：5秒
         */
        int LOW_DELAY = 5000;

        /**
         * 标准延迟时间：10秒
         */
        int NORMAL_DELAY = 10000;

        /**
         * 延迟交换机关键字
         */
        String DELAYED_KEYWORD = "delayed";

        /**
         * 表明是延迟队列
         */
        String DELAYED = "true";

        /**
         * 定义消息交换机，约定：1：类型都为topic，2：延迟队列命名由.delayed结尾
         */
        interface Exchanges {
            /**
             * 默认交换机
             */
            String DEFAULT = "jetPiece.exchange.default";

            /**
             * 错误消息
             */
            String ERROR = "jetPiece.exchange.topic.error";
        }

        /**
         * 定义消息队列
         */
        interface Queues {

            /**
             * 默认消费队列
             */
            String DEFAULT = "jetPiece.queue.default";

            /**
             * 错误消息队列
             */
            String ERROR = "jetPiece.queue.error";
        }

        /**
         * 定义路由key
         */
        interface RoutingKeys {
            /**
             * 运单加入到调度
             */
            String DEFAULT_KEY = "defaultKey";
        }
    }
}
